//////////////////////////////////////////////////////////////////////////////
// Project...: drax
// File......: TimeSpanEx.h
// Date......: 21.11.2008
// Author....: Stephan Arlt
//////////////////////////////////////////////////////////////////////////////

#pragma once

class CTimeSpanEx : public CObject
{
public:
	CTimeSpanEx();
	CTimeSpanEx(const CString &psTimeSpanEx);
	virtual ~CTimeSpanEx();

	//////////////////////////////////////////////////////////////////////////////
	// import / export
	//////////////////////////////////////////////////////////////////////////////

	void FromMilliseconds(unsigned int piMilliseconds) {
		m_iMilliseconds = piMilliseconds;
	}

	unsigned int ToMilliseconds() {
		return m_iMilliseconds;
	}

	void FromString(const CString &psTimeSpanEx);
	CString ToString();

	//////////////////////////////////////////////////////////////////////////////
	// operators
	//////////////////////////////////////////////////////////////////////////////

	CTimeSpanEx& operator = (CTimeSpanEx &pkTimeSpanEx)
	{
		m_iMilliseconds = pkTimeSpanEx.ToMilliseconds();
		return *this;
	}

	//////////////////////////////////////////////////////////////////////////////
	// getter
	//////////////////////////////////////////////////////////////////////////////

	unsigned int GetHours();
	unsigned int GetMinutes();
	unsigned int GetSeconds();
	unsigned int GetMilliseconds();

protected:
	unsigned int m_iMilliseconds;
};
